// Player klasse
// Created by Ruben Rigole

#pragma once

#include "NxPhysics.h"

class PhysX;
class NxCapsuleController;
class NxController;
class NxControllerManager;
class UserAllocator;

class Character
{
public:
	Character(float posx, float posy, float posz, float height, float radius);
	~Character();

	void move(NxVec3 dir);
	NxVec3 GetPosition();
	void Tick(float dTime);
	const D3DXVECTOR3& GetSpeed() const;

private:

	float m_Speed;
	NxVec3 m_LastPos;
	D3DXVECTOR3 m_CurrSpeed;
	NxController* m_Controller;
	UserAllocator* m_Allocator;
	NxControllerManager *m_Manager;
	
	Character(const Character &t);
	Character& operator= (const Character &t);
};